/**
 * AggregationRestartException.java
 * ************************** 
 * @date Apr 7, 2011
 * @author Michele Tamburini
 * 
 * **************************
 */
package gossipServices.aggregation;

/**
 * Description: 
 * Exception that is thrown each time the Aggregation
 * protocol has to be restarted. 
 * We used an exception in order to guarantee an 
 * immediate handling of the new incoming epoch 
 * and so the synchronization of the participating nodes.
 * 
 * An AggregationRestartException has to contain
 * the new epoch and the remaining cycles until the 
 * end of the current one.
 * Note that a new node, joining the cloud, receives an 
 * AggregationMessage with the synchronization instruction
 * about the current epoch and remaining nodes.
 *
 */
public interface AggregationRestartExceptionInterface {	
	/**
	 * @return
	 */
	public int getNewEpoch();

	/**
	 * @return
	 */
	public int getRemainingCycles();

}
